Software defined network (SDN) is a type of network architecture in which the control plane and forwarding plane are hosted in separate devices. For example, the control plane may be hosted in a control device, such as a SDN controller, and the forwarding plane may be hosted in a network device such as a switch or router etc. The control device may communicate with the network device over a control channel and may populate the forwarding table of the network device. SDN allows flexible control of network traffic, and provides a good platform for core network (CN) and applications of the CN.
Control device of the SDN may maintain overall topology and links of a network, discover links and neighbor relationships among switch devices by using link discovery protocol, so as to avoid forming a loop logically by devices. Meanwhile, the control device of the SDN may establish the shortest flow path between any two devices, and support monitoring link state. When an exception occurs to a certain link, the control device of the SDN may update the shortest flow path in real time, to enable the flow to be transmitted along a new flow path.
When there is a large number of switch devices in a network, there may be multiple link connections among switch devices. Topology of the whole network may be complicated. When a network fault occurs, or network configuration is changed, the convergence time may be relatively longer. Since flow path is calculated based on topology, calculation amount about flow path for a complicated network topology may be greater.